package com.travel.service;

import com.travel.entity.dto.TravelPlanDTO;
import com.travel.entity.po.TravelPlan;
import com.travel.entity.vo.TravelPlanVo;
import jakarta.servlet.http.HttpServletRequest;

import java.util.List;

/**
 * @Author:Jasenon_ce
 * @Date: 2025/03/16/下午5:25
 */
public interface TravelPlanService {
    /**
     * 创建旅行计划
     * @param travelPlanDTO 旅行计划DTO
     * @param request HTTP请求
     */
    void createTravelPlan(TravelPlanDTO travelPlanDTO, HttpServletRequest request);
    
    /**
     * 获取当前用户的所有旅行计划（不包含详细内容）
     * @return 旅行计划列表
     */
    List<TravelPlanVo> getUserTravelPlans();
    
    /**
     * 根据ID获取旅行计划详情
     * @param planId 计划ID
     * @return 旅行计划详情，如果未找到则返回null
     */
    TravelPlan getTravelPlanById(Long planId);
}
